package com.basic.meiju;



/*
public enum Weekday {
    //    缺点： 改变枚举常量定义的顺序就会导致ordinal()返回值发生变化
    SUN, MON, TUE, WED, THU, FRI, SAT;
}
如果不小心修改了枚举的顺序，编译器是无法检查出这种逻辑错误的。
要编写健壮的代码，就不要依靠ordinal()的返回值。
因为enum本身是class，所以我们可以定义private的构造方法，并且，给每个枚举常量添加字段：
*/

enum Weekday {
    MON(1), TUE(2), WED(3), THU(4), FRI(5), SAT(6), SUN(0);

    public final int dayValue;

    private Weekday(int dayValue) {
        this.dayValue = dayValue;
    }
}


// 测试
//public class Main {
//    public static void main(String[] args) {
//        Weekday day = Weekday.SUN;
//        if (day.dayValue == 6 || day.dayValue == 0) {
//            System.out.println("Work at home!");
//        } else {
//            System.out.println("Work at office!");
//        }
//    }
//}